/**
 * 
 */
package org.stars.daostars.core;

/**
 * Esistono due tipi di parametri, quelli che si ricavano dagli attributi di un entity bean e che
 * vengono quindi identificati dal nome dell'attributo, e quelli che vengono passati come parametri
 * liberi alla query, che vengono identificati da un indice che va da 0 a n.
 * 
 * @author Francesco Benincasa (908099)
 */
public enum SqlParameterType {
	/**
	 * tipo di parametro che si ricava dagli attributi di un entity bean.
	 */
	TYPE_ATTRIBUTE,
	/**
	 * tipo di parametro che viene passato direttamente alla query.
	 */
	TYPE_INDEX,
	
	/**
	 * tipo di parametro risolto, ovvero nella definizione del parametro
	 * abbiamo già anche il valore, quindi non serve fare altro che utilizzarlo.
	 * Questo tipo di parametro viene usato ad esempio per i parametri di tipo
	 * array. 
	 */
	TYPE_RESOLVED,
	
	
	/**
	 * tipo di parametro legato all'utente che attualmente sta utilizzando il dao
	 */
	TYPE_USER_ATTRIBUTE,
	
	/**
	 * tipo di parametro legato alla configurazione dell'applicazione
	 */
	TYPE_CONFIG_ATTRIBUTE
}
